Cvicenie 2 - riesenie diferencialnych rovnic

Prikad1: Urcite funkciu, ktora opise narast investicii ak investujeme 10000 na 6% spojite pripocitany urok.
x'(t) = 0.06x(t)
x(0) = 10000

sol1  =  
      DSolve[{x'[t] == 0.06  x[t], x[0] == 10000}, x[t], 
        t]

g1  =  
      Plot[x[t] /. sol1, {t, 0, 10}, 
        AxesLabel -> {"rok", "suma"}, 
        GridLines -> Automatic]

x[t] /. sol1 /. t -> 8

Do[Print["rok ", i, ": ", x[t] /. sol1 /. t -> i], {i, 
        0, 10}]

Show[g1, 
      Graphics[{PointSize[0.05], Hue[0.9], Point[{8, 16160.7}]}]]

\(Priklad2 : 
Predpokladajme, \ 
    ze\ vztah\ medzi\ cenou\ p\ jednej\ jednotky\ vyrobku\ a\ tyzdennou\ trzbou\ y\ je\ dany\ rovnicou\ y \((p)\)\ je\ dany\ \(rovnicou : 
y' \((p)\)\) = \(\(-0.4\) y \((p)\)\)\/\(p + 8\)\)
Urcite (rieste dif .  
            rovnicu) zavislost trzby od ceny ak vieme,  
    ze pre p = 24 je y = 8000.

sol2 = 
      DSolve[{y'[p] == ((-0.4*y[p])/((p + 8))), 
          y[24] == 8000}, y[p], p]

g2  =  
      Plot[y[p] /. sol2, {p, 10, 50}, 
        AxesLabel -> {"cena", "trzba"}, 
        GridLines -> Automatic]

Do[Print["cena vyrobku: ", 
        i, ", trzba: ", y[p] /. sol2 /. p -> i], {i, 10, 50, 
        10}]

Priklad 3:
 Fima QuickOil zistila, ze vztah medzi cenou P vymeny oleja a mesacnou trzbou Y je dany rovnicou y'(p)=((0.5  y(p))/((2*p + 5)))
 Urcite funkciu zavislosti trzby na cene P, ak pri p(20) je tyzdenna trzba Y = 18000.
 Nakreslite graf a vypocitajte trzbu ak p je 35.

sol3 = 
      DSolve[{yy'[p] == ((0.5*yy[p])/((2*p + 5))), 
          yy[20] == 18000}, yy[p], p]

g3  =  
      Plot[yy[p] /. sol3, {p, 10, 50}, 
        AxesLabel -> {"cena", "trzba"}, 
        GridLines -> Automatic]

yy[p] /. sol3 /. p -> 35

Priklad4:
  Rovnovazna cena je v kazdom okamihu urcovana ako priesecnik funkcii ponuky a dopytu. Ponuka a dopyt su funkciami momentalnej ceny a rychlosti zmeny (funkcia a jej derivacia). qs=60+p(t)+4p'(t) a qd=100-p(t)+3p'(t) kde t je cas a p(t) je rovnovazna cena.
  Urcite casovy vyvoj rovnovaznej ceny, ak momentalna trhova cena je 8 dolarov.

qs  =  60 + p[t] + 4*p'[t]

qd  =  100 - p[t] + 3*p'[t]

Reduce[qs == qd, p'[t]]

sol4 = 
      DSolve[{p'[t] == 40 - 2  p[t], p[0] == 8}, p[t], 
        t]

g4  =  
      Plot[p[t] /. sol4, {t, 0, 10}, 
        AxesLabel -> {"cas", "cena"}]

Show[g4, Graphics[Text["equilibrium", {8, 19.95}]]]

Solve[(qs == qd) /. {p'[t] -> 0, p[t] -> z}, 
      z]

Priklad5:
  Rovnovazna cena je v kazdom okamihu urcovana ako priesecnik funkcii ponuky a dopytu. Ponuka a dopyt su funkciami momentalnej ceny a rychlosti zmeny (funkcia a jej derivacia). qs=84-5p(t)-2p'(t) a qd=39+4p(t)+p'(t) kde t je cas a p(t) je rovnovazna cena.
  Urcite casovy vyvoj rovnovaznej ceny, ak momentalna trhova cena je 8 dolarov.

Clear[qs,  qd, z, p]

qs  =  84 - 5*p[t] - 2*p'[t]

qd  =  39 + 4*p[t] + p'[t]

Reduce[qs == qd, p'[t]]

sol5 = 
      DSolve[{p'[t] == 15 - 3  p[t], p[0] == 8}, p[t], 
        t]

g5  =  
      Plot[p[t] /. sol5, {t, 1, 5}, 
        AxesLabel -> {"cas", "cena"}]

Show[g5, Graphics[Text["equilibrium", {4.5, 5.002}]]]

Solve[(qs == qd) /. {p'[t] -> 0, p[t] -> z}, 
      z]